﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Windows.Forms;

namespace FrbaCommerce.AccessData
{
    class adRubro
    {

        public static void buscarListaRubros(Gets_and_Sets.Rubro_getset List, DataGridView dgv1)
        {
            SqlConnection conn = Program.obtenerConexion();
            SqlCommand cmd = new SqlCommand("SELECT rub_id, rub_descripcion FROM [GD1C2014].[Monkey_Coders].[Rubros]", conn);

            Codigo_reutilizable.FuncionesBaseDatos.CompletarDataGrid(dgv1, conn, cmd);

        }



        public static void ActualizarRubroEliminado(int rubroAEliminar)
        {
            int retorno;
            using (SqlConnection conn = Program.obtenerConexion())
            {
                SqlCommand cmd = Codigo_reutilizable.FuncionesBaseDatos.crearProcedure("GD1C2014.dbo.bajaRubro", conn,
                new SqlParameter("@Id", rubroAEliminar));


                retorno = cmd.ExecuteNonQuery();
                conn.Close();
            }
            Codigo_reutilizable.Resultado.validar(retorno, "Rubro eliminado");

        }

        public static Gets_and_Sets.Rubro_getset obtenerRubro(Int32 rubroId)
        {
            Gets_and_Sets.Rubro_getset rubro = new Gets_and_Sets.Rubro_getset();


            SqlConnection conn = Program.obtenerConexion();
            SqlCommand cmd = Codigo_reutilizable.FuncionesBaseDatos.crearProcedure("GD1C2014.dbo.obtenerRubro", conn,
            new SqlParameter("@Id", rubroId));

            SqlDataReader lectura = cmd.ExecuteReader();
            while (lectura.Read())
            {
                rubro.Id = Convert.ToInt32(lectura.GetValue(0));
                rubro.Descripcion = Convert.ToString(lectura.GetValue(1));
            }

            conn.Close();
            return rubro;
        }




        public static void actualizarRubro(Gets_and_Sets.Rubro_getset Rubro, int rubroAModificar)
        {
            int retorno;
            using (SqlConnection conn = Program.obtenerConexion())
            {
                SqlCommand cmd = Codigo_reutilizable.FuncionesBaseDatos.crearProcedure("GD1C2014.dbo.actualizarRubro", conn,
                new SqlParameter("@Id", rubroAModificar),
                new SqlParameter("@Descripcion", Rubro.Descripcion));

                retorno = cmd.ExecuteNonQuery();
                conn.Close();
            }

            Codigo_reutilizable.Resultado.validar(retorno, "Descripcion del Rubro Actualizada");

        }


    }
}